package cn.com.dcsgo.sdk.payment.wechat.ltzf.payments.nativepay.model;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;

/**
 * 订单退款响应实体类
 *
 * @author Dcsgo
 * @since 2024/8/15 09:44
 */
@lombok.Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class RefundOrderResponse {
    /**
     * 返回状态，枚举值：
     * 0：成功
     * 1：失败
     */
    private Integer code;
    /**
     * 返回数据
     */
    private Data data;
    /**
     * 消息
     */
    private String msg;
    /**
     * 唯一请求ID，每次请求都会返回，定位问题时需要提供该次请求的request_id
     */
    @JsonProperty("request_id")
    private String requestId;

    @lombok.Data
    @JsonIgnoreProperties(ignoreUnknown = true)
    public static class Data {
        /**
         * 商户号
         */
        @JsonProperty("mch_id")
        private String mchId;
        /**
         * 商户订单号
         */
        @JsonProperty("out_trade_no")
        private String outTradeNo;
        /**
         * 商户退款单号，只能是数字、大小写字母_-且在同一个商户号下唯一
         */
        @JsonProperty("out_refund_no")
        private String outRefundNo;
        /**
         * 系统退款单号
         */
        @JsonProperty("order_no")
        private String orderNo;
        /**
         * 微信支付退款单号
         */
        @JsonProperty("pay_refund_no")
        private String payRefundNo;
    }
}

